package com.siyoumi.modules.sys_status.web;

import com.siyoumi.component.XRedis;
import com.siyoumi.controller.ApiController;
import com.siyoumi.entity.SysAppService;
import com.siyoumi.modules.sys_status.entity.SysStatusInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

//系统状态
@Slf4j
@RestController
@RequestMapping("/app/sys_status")
public class ApiSysStatus
        extends ApiController {

    @GetMapping("")
    public SysStatusInfo index() {
        SysStatusInfo sysStatusInfo = new SysStatusInfo();

        log.info("check redis");
        try {
            XRedis.getBean().setEx("test", "1", 5);
            sysStatusInfo.setRedis_status(true);
        } catch (Exception ex) {
            sysStatusInfo.setRedis_status(false);
            sysStatusInfo.setRedis_errmsg(ex.getMessage());
        }

        log.info("check mysql");
        try {
            SysAppService.getBean().getEntity("1");
            sysStatusInfo.setMysql_status(true);
        } catch (Exception ex) {
            sysStatusInfo.setMysql_errmsg(ex.getMessage());
        }

        return sysStatusInfo;
    }
}
